#ifndef QCHATSERVER_H
#define QCHATSERVER_H

#include <QDialog>

/****************************************************************
 * 主窗口类： QChatServer
 * 功能：成员管理界面：响应客户端请求
 * 主要成员：server, udpSocket, onlineUser
 ****************************************************************/


//add by dimon, 2014-03-18 16:50
#include "qmydb.h"
#include "quser.h"
#include "qserver.h"
#include <QtNetwork>
#include <QUdpSocket>
#include <QByteArray>
#include <QStandardItemModel>

QT_BEGIN_NAMESPACE
namespace Ui { class QChatServer; }
QT_END_NAMESPACE

class QChatServer : public QDialog
{
    Q_OBJECT

public:
    QChatServer(QWidget *parent = nullptr);
    ~QChatServer();

private slots:
    void onReadDatagrams(); //读取数据报

    void on_btnStart_clicked();

private:
    Ui::QChatServer *ui;

    //在线用户列表
    QStandardItemModel model;
    void tbviewRefresh();

    //TCP服务，UDP服务
    bool running; //服务状态
    QServer server; //TCP服务对象
    void processDatagram(QByteArray block, quint32 senderIP,
                         quint16 senderPort);//处理数据报
};
#endif // QCHATSERVER_H
